
using namespace std;

int main()
{
    // 大小为 10 的数组，它的每个元素都是大小为 20 的数组
    // 这些数组的元素是含有 30 个整数的数组
    int arr[10][20][30] = {0}; // 将所有元素初始化为 0

    int ia[3][4] = {           // 三个元素，每个元素都是大小为 4 的数组
        {0, 1, 2, 3},
        {4, 5, 6, 7},
        {8, 9, 10, 11}
    };

    // 没有标识每行的花括号，与之前的初始化语句是等价的
    int ia2[3][4] = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11};

    // 显式地初始化每行的首元素
    int ia3[3][4] = {{0}, {4}, {8}};

    // 显式地初始化第 1 行，其他元素执行默认初始化
    int ia4[3][4] = {0, 3, 6, 9};

    ia[2][3] = arr[0][0][0];    // 用 arr 的首元素为 ia 最后一行的最后一个元素赋值
    int (&row)[4] = ia[1];      // 把 row 绑定到 ia 的第二个 4 元素数组上
}